home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HPAVC
/
HPAVC CD-ROM.iso
/
APRITE.ZIP
/
APRITE.DOC
next >
Wrap
Text File
|
1992-10-22
|
30KB
|
699 lines
╔═══╗ ╔═══════╗ (WS)
║ ║ ║ ║ ║ ║
╔╝ ╚╗ ║ ║ ║
║ ║ ║ ║ ╠══
╠═════╣ ╔═════╗ ╠══╦════╝ ║ ║ ╔═════╗
╔╝ ╚╗ ║ ║ ║ ╚╗ ║ ║ ║ ║
║ ║ ║ ║ ║ ╚╗ ║ ║ ╠═════╝
║ ║ ║ ║ ║ ╚╗ ║ ║ ║
╠═════╝ ╚═════
║
║
║
*
Syntax Overview:
ApRite [parameters]
ApRun <command>
Accepted parameters:
ApRite /Install
Initiate or re-initiate application system
ApRite /Destroy
Delete/Remove the complete application system
ApRite /Masters [+|- <user>]
List/Define accepted application users
ApRite /SLaves [+|- <user>]
List/Define users that are accepted as slaves
ApRite /Admin [+|- <user>]
List/Define application system administrators
ApRite /Allow command <user>
Allow [user] access to specified command
ApRite /Remove <nr>
Remove application from application system
ApRite /SHow
Show status and list current allowed commands
ApRite /STatus [Masters|Slaves Pause|Cont]
Show or change application system status
ApRite /?
Display syntax overview
*
ApRite / ApRun : Application System - Description
Purpose:
Grant rights to applications: Run applications with NetWare
rights that differ from the rights of the person calling the
application.
The complete system is based on NetWare security.
Features:
- Allow users to change user ID while 3rd party applications
are run.
- Multiple security levels based on NetWare security.
- Management tool to administer and view the ApRite security.
- Built-in self test for virus infection.
Author:
Wolfgang Schreiber (all rights reserved)
Components:
ApRite.EXE Administration tool
ApRite.DOC Documentation
ApRun.EXE Launch applications
*
Quick Start:
Within 5 minutes you can get a quick impression of the
capabilities of ApRun:
1) Initiate ApRun:
"ApRite /Install"
2) Give a second user (e.g. GUEST) the right to run
SYSCON in your name:
"ApRite /Allow SYSCON GUEST"
3) Login as GUEST and run SYSCON (with/without ApRun):
"ApRun SYSCON"
If you want to remove GUEST's privileges you have two choices:
4a) Login as Supervisor and revoke the privileges:
"ApRite /Remove <nr>" [Insert appr allowance nr]
4b) Remove GUEST from the list of accepted masters:
"ApRite /Master - GUEST"
*
License:
The publisher has thoroughly developed and tested the functions
of ApRun/ApRite but cannot take any liability for adverse
effects or damage that might be caused by software
malfunctions, erroneous or incomplete documentation.
Orders can be sent directly to the publisher.
International distributors wanted.
Retail price: US $199 for first file server,
US $ 30 for additional server licenses
*
Demo Version
The 3 files APRITE.EXE, APRUN.EXE, and APRITE.DOC may
freely be copied to other file servers. But since ApRite
is a commercial application, unlicensed users may only
have a 60 days testing period.
Within this period users can test all features of ApRite
on any number of file servers.
About 60 days after its installation on a server it will
disable itself. When the demo time is over, only the
options "ApRite /?" and "ApRite /Destroy" will remain
active.
Warning: if the demo version detects a file server date
change it might disable itself immediately.
*
Publisher:
Dr. Wolfgang Schreiber
Schanzenstr. 74
4000 Dusseldorf (Germany)
Fax: (xx49) - 211 - 55 64 69
Any comments, suggestions, or error reports are welcome.
Users who detect bugs and document those bugs to the
publisher will be the first to receive the next release of
the application.
Written in Borland's TurboPascal v6.0
*
Concepts:
ApRite is using a concept called 'Application System' and its
implementation in based on the NetWare concept of a 'Job
Server'.
ApRite uses the terms 'Application System', 'MASTER', 'SLAVE',
'ADMINISTRATOR', 'COMMAND', and 'OPTIONS'. Usage of those terms
must be explained shortly.
Application System: The term 'application system' is used to
describe the complete environment supplied by ApRite and ApRun
to support rights granted to applications.
The application system must be initialized by the Supervisor or
an equivalent before users can access it.
To explain the other concepts we will refer to some command
lines as examples (assumed that U_M and U_S are valid user
names):
1) "ApRite /Allow SYSCON U_M" issued by U_S (Slave)
2) "ApRite /Allow FILER" issued by U_S (Slave)
3) "ApRun SYSCON" issued by U_M (Master)
SLAVE: A slave is a NetWare user who grants his/her NetWare
rights to a master, whenever the master will call a specified
program.
A slave must have been admitted to the application system
by the SUPERVISOR ("ApRite /SLaves ...").
The slave must have specified the commands (and its
accepted masters) that can be run in his/her name, before
any master can run an application in the name of a slave,
("ApRite /Allow ").
In the example given above the user U_S gives the user U_M
the right to call SYSCON (command 1) - this means that U_M
will get the rights of U_S while running SYSCON.
Then U_S allows every legitimate application system master
to run FILER with the rights of U_S (command 2).
MASTER: A master is a NetWare user who is logged in to a
NetWare file server and wants to run an application with
different rights than those that he usually has.
Masters must have been admitted to the application system by
the SUPERVISOR ("ApRite /Masters ...").
A master can issue a program call with the rights of a 'slave'
if the slave has allowed (this master) to run an application in
his/her name.
COMMAND/OPTIONS: A standard DOS command line usually
contains the (path and) name of an executable command with
or without additional options/parameters).
The term 'Command' in this script includes all characters up to
the first blank in the command line. It consists of an optional
valid DOS path followed by a file name and it may include the
extension of the application.
The term 'Options' refers to everything that follows the first
blank in the normal DOS call.
ADMINISTRATOR: An application system administrator can
view and change the status of the application system. The
administrator can see all allowed applications, can remove
specific applications from the system, can halt or restart
the system.
By default only the person who installs the application
system is created as system administrator.
New administrators can be defined by the supervisor
("ApRite /Admin ...").
*
Installation and Usage:
- Read the READ.ME file from the installation disk for
information about the first steps;
- Copy all files from the installation disk to a NetWork
directory;
- Setup the system by calling "ApRite /Install"
- Define legitimate slaves with "ApRite /Slaves ..."
(Users who give their rights to applications)
- Define legitimate masters with "ApRite /Masters ..."
(Users who receive new rights in applications)
- A legitimate slave grants application rights with
"ApRite /Allow ..."
- Legitimate masters now can call "ApRun" to start the
admitted applications.
*
Security:
The application system includes several layers of protection to
ensure that only accepted users get access to the system:
- only a Supervisor (or eqivalent) can initiate the system;
- only specified users can get access to the system; they must
have been admitted to the system as 'slaves' or 'masters' by
the supervisor;
- the user ('slave') who gives his rights to other users
('masters') must actively allow those users access to
specified applications;
- only the specified applications can be called; use of these
applications can be restricted to specified persons;
- the master can call the selected applications only if those
applications have not been changed since access was granted;
- the supervisor or administrator can monitor and change the
current status of the application system.
- the supervisor or an assigned 'administrator' can remove
specified applications from the system;
- The automatic self test for virus infection will display a
warning if ApRite.EXE is infected by a virus.
*
Multi-Server Environments
The application system is always file server specific: ApRite
will define how rights may be changed on the current server.
ApRun will change the rights only for the current server.
The current file server is defined by your current default
drive letter. ApRun will always modify rights on a single
server: the server of your default drive.
*
Syntax: ApRite [/parameter]
All options of ApRite can be abbreviated as long as those
shortcuts are unique: "ApRite /I" or "ApRite /SH" are valid
shortcuts.
This overview presents optional parameters within square
brackets "[xxx]", user supplied names (e.g. user names or
commands) in angle brackets "<xxx>". Upper vs. lower case
letters do not make any difference.
*
ApRite /?
Display syntax overview
This command give an overview over the features and available
parameters of ApRite.EXE with basic explanations of their effects.
Example: ApRite /?
*
ApRite /Install
Initiate or Re-Initiate application system
Before using any of the following ApRite parameters the
application system has to be established.
The installation procedure will only take about a second and
will initiate security and all relevant variables.
None of the ApRite/ApRun application parts stays resident in a
workstation's RAM. The application system uses similar bindery
security as NetWare itself; it will store security information
in the NetWare bindery.
WARNING: If "ApRite /Install" is issued a second time, it will
completely reset the application system: all masters, slaves,
administrators, or information about accepted applications will
be removed.
You will be asked for confirmation if the application system is
already installed.
This option is for supervisors only.
Example: ApRite /Inst
*
ApRite /Destroy
Delete/Remove the complete application system
This option can be used to completely remove the application
system structure from your file server.
The only way to recover from the effects of "/Destroy" is to
restore the file server from a previous backup.
This option is for supervisors only.
Example: ApRite /Dest
*
ApRite /Masters [+|- <user|group>]
List/Define accepted application users
See the discussion of the master-slave concept above. Masters
are NetWare users that are allowed to take the identity and
rights of a 'slave' while a program is executed. Only the users
admitted to the application system as masters are allowed to
run applications with the temporary ID of a slave.
Before a slave can specify a user as master (that means before
he/she can allow a master to run the application in the slave's
name) the supervisor must have admitted both slave and master to
the application system. This is done with "ApRite /Slaves ..."
and "ApRite /Masters ..."
Specifying '+' will add new masters, '-' will remove existing
masters.
Users and groups can be accepted as masters. If a group is
specified, ApRite will add or remove each group member
individually: the call "ApRite /Masters - everyone" will
remove all masters.
A slave with supervisor rights can implicitly add masters with
the "/Allow" option (see there). This feature applies to
supervisors only.
Example: ApRite /Master + guest
ApRite /Master - everyone
ApRite /Ma + guest
*
ApRite /SLaves [+|- <user|group>]
List/Define users that are accepted as slaves
See the discussion of the master-slave concept above. Slaves
are NetWare users whose rights are granted to a master while
a program is executed.
Only the users admitted to the application system as slaves
are allowed to transfer their rights to a application user
(master).
Before any slave can allow an application to be run in the
slave's name, the supervisor must have admitted the user as
slave to the application system. This is done with "ApRite
/SLaves ..."
Specifying '+' will add new slaves, '-' will remove existing
slaves.
Users and groups can be accepted as slaves.
This option is for supervisors only.
Example: ApRite /Slave + guest
ApRite /Slave - guest
ApRite /SL + everyone
*
ApRite /ADmin [+|- <user|group>]
List/Define application system administrators
An administrator can monitor the status of the application
system, view the list of accepted slaves, masters, and
applications, and remove specific applications from the system.
The administrator is comparable to a queue operator in the
printing environment.
Specifying '+' will add new administrators, '-' will remove
existing administrators.
Users and groups can be accepted as slaves.
This option is for supervisors only.
Example: ApRite /Admin + guest
*
ApRite /ALlow [command [<user>]]
Allow [user] access to specified command
The option "/Allow" enables a slave to specify, what command is
allowed to be executed in his/her name. This option adds the
new command to the list of accepted commands. An accepted
master is thereby enabled to run this command in the name of
the slave.
The command must contain at least a valid filename; it may
include an optional drive/path specification and/or
extension. ApRite searches for the specified command file to
add it to its list, so the application must be in the default
drive or in one of the search drives, if no path is specified.
The specified command can be located on a local drive or second
file server, but the rights change will always affect only the
current default server (i.e.: the server where the default
drive is located).
If the application (and optional master) is accepted by the
system, it will display the new list of accepted applications.
Each registered application automatically receives a unique
application ID. This ID can be used to remove specific
applications from the system (if desired).
All valid file names will be accepted, but only COM, EXE, and
BAT files give sense.
To use the parameter "/ALLOW" the user must be in the list of
accepted slaves, and he/she needs search/file scan rights in
the directory of the specified command.
If no user is specified after the command, the application can
be started by any accepted master. If the specified user is
unknown or not accepted as master the command will not execute.
If a supervisor equivalent specifies a user who is not a
registered master yet, the system will automatically add the
user to the master list.
If "ApRite /ALlow" is not followed by a command, it will list
the current accepted applications entered by the user.
Only users - no groups - can be accepted as masters.
This option is for supervisors and accepted slaves only.
Example: ApRite /Allow syscon
ApRite /Allow syscon.exe guest
ApRite /Al k:\sub\this.bat guest
*
ApRite /Remove <nr>
Remove application from application system
Every entry in the list of accepted applications can be
identified by its entry ID. The IDs are constants and are
assigned by NetWare.
Applications can be removed from the system list by a system
administrator or by the slave who added the entry to the list.
This option is for supervisors and administrators only.
Example: ApRite /Remove 473
*
ApRite /STatus [Masters|Slaves Pause|Continue]
Show or change application system status
Comprehensive system status information is displayed.
In addition to the status display a supervisor or administrator
can change its status.
You can determine if slaves may add new jobs to the application
system, or if masters may access the application system to
acquire the slaves' rights.
'ApRite /Status Masters Pause' will de-activate the application
system without destroying any of the stored information:
Currently active ApRun applications can be continued, but no
master can start new ApRun commands. 'Continue' will
re-activate the application system.
'ApRite /Status Slaves Pause' will prevent slaves to add new
applications to the application system. Masters still can access
the system to acquire the slaves' rights. All exixting information
will be kept.
Examples: ApRite /Status
ApRite /St Masters pause
ApRite /St Slaves Cont
*
ApRite /SHow
Show status and list current accepted applications
'/SHow' will not only display the short status report, but
additionally list the current accepted slaves, masters,
administrators, and applications.
This option is for supervisors and administrators only.
Example: ApRite /Show
*
ApRun <command> [parameter list]
Run applications with another identity
If an accepted master wants to start an accepted application in
the name of a slave, the command must be launched by ApRun.
Without ApRun the application would run with the default rights
of the program caller.
The command can be followed by the parameters as required by
the launched application's syntax. Use the normal command
syntax, and simply add 'ApRun' at the beginning of the command
line.
Masters who want to launch applications need Search/File Scan
rights in the application directory. If the command is not to
be found in one of the master's search drives, it must include
a drive/path specification.
ApRun.EXE will use approximately 25 Kb of the workstation RAM
while the launched application is running. It therefore limits
the RAM available to that application. Since ApRun is not a TSR
program it will not stay in the workstation memory except
during the execution of the launched program.
This option is for accepted masters only.
Example: ApRun SYSCON
ApRun NCOPY Z:*.* k: /sub
ApRun C:\this.bat par1 par2
*
Limitations:
Due to NetWare limitations and ApRun's implementation there are
several aspects administrators should keep in mind.
- Number of application configurations: The list of accepted
application/rights configurations may include up to 250
entries.
- Number of slaves running ApRun simultaneously on one file
server: 250
- Memory: since ApRun.EXE has to stay in memory while it
changes the rights of a master to the rights of the slaves,
and since it has to stay active until the original rights
are restored, there is only a restricted area of RAM
available to slave applications.
Generally ApRun.EXE takes about 25 kB of RAM during the
execution of slave applications. The RAM available to
applications will be higher if those are COM or EXE files,
a little less with BAT files (since ApRun uses COMMAND.COM
to run batch jobs).
If memory is a problem, you might consider to use 3rd party
memory manager (like HIMEM, EMM386, or QEMM386) to load some
drivers and TSRs to high memory areas. DOS v4.x will usually
leave less memory to applications than DOS v3.x or v5.x.
- Multitasking: if ApRun were used in a multitasking
environment, ALL tasks would change to the slave's
identity as long as one task runs an application with
ApRun. Similar considerations apply to task switching
environments like DR-DOS v6.x or MS-DOS v5.x.
To avoid bypassing of NetWare security, ApRun will not run
under Windows or in other multitasking environments.
- TSR programs: The complete station of the master will
receive the rights and identity of the slave during program
execution. Obviously this will affect TSRs that have been
loaded previously, too. Therefore TSRs might in some cases
represent a breach in security since they receive the same
rights as the legitimate application.
In most situations this will not be a problem.
- Application Updates / Program changes: If a slave allows
access to an application ApRun tries to ensure that this
program is run without any changes. Future masters can run
the accepted application only in its current form (for
security reasons). Any changes to the program will prevent
masters from being able to start that application. The slave
has to re-allow access whenever an application is modified.
- NetWare bugs: Due to a NetWare bug few NetWare commands
(e.g. SETPASS) will not execute with the ID of the
SLAVE but with the ID of the MASTER. This will only
affect commands that use a specific NetWare API
(GetConnectionInformation). Most commands however will
work as expected and run with the ID of the SLAVE.
Novell is aware of this bug in NetWare v3.11 - and
hopefully fix it in a future NetWare version.
Due to the above mentioned limitations the following
suggestions are strongly recommended:
- Create special users who only have the rights to run one
application. The trustee rights of those users might include
only a single directory. Accept only those user names as
slaves.
Take into account that background applications (TSRs)
receive the slave's rights, too.
- Specify the name of the acceptable master in the 'Allow'
command whenever possible. This is especially recommended
if the slave has supervisor rights.
*
Troubleshooting
General Problems
Problem: An application is not executed though it has
been installed with 'ApRite /Allow ...'
Possible Causes: - The user does not have a search path to the
application or does not have sufficient rights
(File Scan/Search rights may be enough).
Solution: Check the user's path and rights.
Problem: A virus warning is displayed.
Possible Causes: - ApRite has a built in virus self-test. A virus
might have infected your system.
- You have different versions of ApRite on your
system.
Solution: Run a virus scan utility immediately.
*
Error messages
Message: 'Application list full'
Possible Causes: The application system can save up to 250
applications. You exceeded this limit.
Solution: Delete some unneeded applications from the list
with 'ApRite /Remove'.
Message: 'Application System not yet initialized'
Possible Causes: ApRite is not yet installed on this server
Solution: Install ApRite. Make sure that you have one
license per file server.
Message: 'ApRite-Demoversion. Valid only .. days'
Possible Causes: - You do not have a full version of ApRite but a
limited demo version on this server. The time
limit has expired.
Solution: Purchase a full license.
Possible Causes: - On a multi-server system you try to run ApRite
on another server than the one that you
installed ApRite on. You may use ApRite for the
demo period but have to purchase a license for
every server that you permanently want to install
ApRite on.
Solution: Purchase a full license.
Message: 'Could not access Application System'
Possible Causes: ApRite is not yet installed on this server
Solution: Install ApRite. Make sure that you have one
license per file server.
Message: 'Demonstration time for ApRite on ... expired.'
Possible Causes: You do not have a full version of ApRite but a
limited demo version on this server. The time
limit has expired.
Solution: Purchase a full license.
Message: '<username> is no accepted MASTER'
Possible Causes: You tried to run ApRun but your are not accepted
as application master.
Solution: Ask the supervisor to install you as ApRun
master ('ApRite /Master ...').
Message: 'Multitasking active'
Possible Causes: You tried to run ApRun in an multitasking
environment (e.g. Windows, DesqView, Task
Switcher). Due to security considerations this
is not accepted.
Solution: Start ApRun in a single task environment.
Message: 'Only a Supervisor can call this function !'
Possible Causes: Some functions of ApRite are reserved for
Supervisors and equivalents.
Solution: Login as supervisor and retry.
Message: 'Wildcards not acceptable'
Possible Causes: You tried to run 'ApRite /Allow' with wildcards.
Solution: Use only one application per command.